![]() |
|
|
rtk 19961996.1.1 (preuredi)Urejanje števil 1. podnalogaKatja zelo rada programira, zato je napisala funkcijo, ki sprejme seznam števil, jih uredi po velikosti od najmanjšega do največjega in vrne urejen seznam. Nekega jutra je bila zelo zaspana in je datoteko s funkcijo odprla z napačnim urejevalnikom. Ta ji je nesramno pomešal vrstice funkcije. NalogaPreuredi dane vrstice funkcije
Vhodni podatkiSeznam števil, ki niso urejena po velikosti. Izhodni podatkiSeznam s števili, urejenimi po velikosti naraščajoče. KomentarFunkcija je eden izmed znanih algoritmov za urejanje seznamov. Lahko si pomagaš s člankom na Wikipedii. Uradna rešitevdef uredi_stevila(seznam):
'''Sprejme seznam števil in jih uredi po velikosti naraščajoče.'''
n = len(seznam)
i = 1
while i < n:
j = i
while j > 0 and seznam[j-1] > seznam[j]:
seznam[j-1], seznam[j] = seznam[j], seznam[j-1]
j += -1
i += 1
return seznam
1996.1.3 (preuredi)Domača naloga 1. podnalogaMiha je na računalniku napisal domačo nalogo za slovenščino in jo poslal očetu
v pregled. Oče je vanjo vpisal svoje pripombe tako, da jih je obdal z znakoma
NalogaPreuredi vrstice funkcije
Vhodni podatkiDomača naloga napisana v obliki niza. Izhodni podatkiDomača naloga v obliki niza, brez očetovih komentarjev. PrimerVhod
Izhod
KomentarDvojnih presledkov, ki nastanejo pri brisanju komentarjev, ni treba odstraniti. Uradna rešitevdef odstrani_komentarje(niz):
'''Funkcija iz besedila odstrani vse kar se nahaja med znakoma < in >.'''
nov_niz = ""
komentar = False
for znak in niz:
if znak == '<':
komentar = True
continue
elif znak == '>':
komentar = False
continue
if not komentar: # nahajamo se zunaj komentarja
nov_niz += znak
return nov_niz
1996.2.1 (preuredi)Palindromi števil 1. podnalogaBesedo ali stavek, ki se nazaj bere enako kot naprej, imenujemo palindrom.
Podobno so številski palindromi števila, katerih zapis v desetiškem sistemu
je z desne proti levi enak kot z leve proti desni (taki števili sta naprimer
Katera pa so števila, za katere je vsota števila (npr. NalogaPreuredi vrstice funkcije
Vhodni podatkiŠtevilo Izhodni podatkiSeznam števil, ki ustrezajo opisu. Primer
Uradna rešitevdef obrat_stevila(x):
'''Funkcija vrne število, ki ga dobimo, če x zapišemo
v desetiškem sistemu in ga preberemo od desne proti levi.'''
y = 0
while x > 0:
y = y * 10 + x % 10
x = (x - y % 10) / 10
return y
def vsota_palindrom(n):
'''Funkcija izpiše vsa števila do n, za katera velja,
da je vsota števila in njegovega obrata palindrom.'''
ustrezna_stevila = []
for i in range(1, n):
if obrat_stevila(obrat_stevila(i) + i) == obrat_stevila(i) + i:
ustrezna_stevila.append(i)
return ustrezna_stevila
Mesto objave ob koncu projekta 15.9.2018
|